1. Field of the Invention
The present invention relates to color computer graphics and more particularly to color gamut mapping in which source device colors not reachable by a destination device are mapped to other colors that are reachable by the destination device.
2. State of the Art
Color matching algorithms are intended to present information on one medium so that it appears the same as when presented on different media (for example, a computer display and a printed page) or on the same medium but rendered on different devices (for example, different printers). For Cathode Ray Tube (CRT) color displays, the CIE (Commission Internationale de l'Eclairage) has established color standards. Working from these standards, methods have been developed which allow all displays to present color in the same manner, even though different colors are used to generate the image. However, since printing is a subtractive process (CRTs using an additive process), it becomes difficult to tell a printer what amounts of its subtractive primaries to use to present the same color when told the additive primaries of the CRT.
Neugebauer, EFI, Kodak, and numerous others have attempted to convert from the color representation on a CRT to a color specification on a printer. The general consensus is that an interpolated table is an adequate method for converting from the CRT color space to the printer's color space. However, if one measures the colors available to a CRT and those available to a color printer, one finds that a small amount of colors which are printable cannot be displayed on the CRT, while many colors which may be displayed on the CRT cannot be printed, especially green, yellow, red, and magenta. The color range available to an imaging device is referred to as its color gamut, and this non-overlapping nature of the color gamuts between devices is known as gamut mismatch. The colors which a source device can image but the destination device cannot image are known as out-of-gamut colors. Since image areas containing out-of-gamut colors cannot simply be left blank when rendering an image, some decision must be made as to how such colors are to be represented. This process is know as gamut mapping.
Several gamut mapping techniques have been previously described, typically based on either device color spaces or perceptually uniform color spaces. (In perceptually uniform color spaces, color pairs separated by numerically equally color distances appear to a viewer as being in substantially the same color relationship to each other, a property which device color spaces typically do not have.)
Conventionally, two color gamut mapping methods have been used: clipping, in which out-of-gamut colors are mapped to an outer surface of the gamut, and compression, in which the source gamut is compressed so as to bring all of its colors within the destination gamut.
In clipping, the general rule for mapping from a source device (such as a CRT) to a destination device (such as a color printer) is that all colors which are available to the destination device should print the source device's color as closely as possible; when printing out of gamut colors, hue angle, lightness, and saturation of the source device should be preserved as closely as possible.
However, when this algorithm is implemented, users do not like the results, especially when attempting to present monitor saturated colors such as yellow, green, red, and magenta. Usually, the yellow is the most objectionable, because most CRT yellows are more green than the printer's yellow. The result is that when saturated CRT yellow is requested, the color matching algorithm maps this color to white or a washed-out green. This typically isn't what the user had in mind when requesting saturated yellow, although this is a correct color science representation of that color.
The disadvantage of clipping is that a range of out-of-gamut colors is mapped into a single color, losing important texture information. Clipping assumes that out-of-gamut colors will be few, such that the information loss produced by clipping is not conspicuous. Such is typically the case with computer-generated images. For photographic images, on the other hand, out-of-gamut colors may occur frequently in an image. In such an instance, clipping causes undesirable contouring and loss of texture information. In contouring, smooth, natural color transitions are broken up such that the resulting display contains abrupt, unnatural color transitions that are conspicuous and objectionable.
Compression assumes that out-of-gamut colors will occur frequently. In order to preserve texture information and avoid contouring, the colors of the source gamut are compressed so as to fit within the destination gamut. During compression, all of the colors within the source gamut are shifted. Compression may be linear, in which case all of the colors are shifted by proportionate amounts. The disadvantage of linear compression techniques is that none of the colors can match the original colors, and much of the colors contained in most images are compressed to a point which is visually objectionable. Furthermore, device-space-based compression techniques have the disadvantage of producing unpredictable hue, saturation and lightness shifts (although this problem can be reduced somewhat by translating to a "pseudo" hue, saturation and lightness color space).
Alternatively, compression may be non-linear, in which case an anchor point is chosen and colors farther away from the anchor point are shifted by proportionally greater amounts. The disadvantage of nonlinear compression based on perceptually uniform color spaces is that none of the colors can match the original colors. Therefore, although compression works well for photographic images, since every color is shifted from the source color to a different destination color, compression is unsuitable for computer-generated images. In computer-generated images, spot colors are specified for artwork and logos, for example. Color displayed on the computer screen during design must match those printed during production to assure satisfactory results. For this purpose, clipping is preferable, since in-gamut colors remain unchanged during gamut mapping.
With either technique, clipping or compression, two different mapping methods are prevalent. The first mapping method maintains one or two dimensions (usually hue and then lightness) in preference to the other dimension(s). For example, one might maintain hue and lightness and compress or clip chroma. The second mapping method minimizes the color distance, for example CIELAB .DELTA.E, or a similar perceptual loss function. Whereas typically a compression mapping is a linear mapping, a nonlinear mapping can be created based on the CIE .DELTA.E* recommendation or on psychophysical experimentation. Nonlinear compression allows for more optimal use of gamut space and avoids the very objectional results sometimes produced by linear compression.
Assuming that images to be printed will typically consist of a combination of natural images and computer generated images, ideally the natural images would be color gamut mapped so as to preserve texture information and avoid contouring, and the computer generated images would be color gamut mapped to maintain in-gamut colors. However, there is usually no way to tell the source of a color specification.
By using a weighted combination of both linear and nonlinear mapping methods, it is possible to tune the mapping algorithm to create the most acceptable compromise. The weighting algorithm should be derived through carefully monitored psychophysical experiments. One such mapping method is disclosed in copending U.S. patent application Ser. No. 08/305,959, filed Sep. 16, 1994 pending, which is incorporated herein by reference.
One of the most objectionable artifacts of the type of mappings described is that colors can cross name boundaries. For example, a reddish color might map into a yellowish or orangish color. A viewer's eye is especially senstive to such hue shifts. Because of the importance placed on avoiding hue shifts, previous gamut mapping methods have been rather inflexible. That is, hue shifts have been minimized because of no scientific basis on which to constrain them.
What is needed, then, is a method of color gamut mapping that allows for greater flexibility in gamut mapping without producing objectionable hue shifts or other artifacts.